home *** CD-ROM | disk | FTP | other *** search
- function getIndexArr(str)
- {
- var _loc5_ = new Array();
- var _loc2_ = 0;
- while(_loc2_ < str.length)
- {
- if(str.charAt(_loc2_) == "[")
- {
- var _loc4_ = "";
- var _loc1_ = _loc2_ + 1;
- while(_loc1_ < str.length)
- {
- if(str.charAt(_loc1_) == "]")
- {
- _loc5_.push(_loc4_);
- _loc2_ = _loc1_;
- break;
- }
- _loc4_ += str.charAt(_loc1_);
- _loc1_ = _loc1_ + 1;
- }
- }
- _loc2_ = _loc2_ + 1;
- }
- return _loc5_;
- }
- function getVal(parent, str, new_val)
- {
- var i = 0;
- while(i < str.length)
- {
- if(str.charAt(i) == "[")
- {
- var var1_var = parent != undefined ? parent[str.substr(0,i)] : eval(str.substr(0,i));
- break;
- }
- i++;
- }
- if(i == str.length)
- {
- if(new_val != undefined)
- {
- parent != undefined ? (parent[str] = new_val) : eval(str);
- }
- return parent != undefined ? parent[str] : eval(str);
- }
- var var2_index_arr = getIndexArr(str);
- switch(var2_index_arr.length)
- {
- case 1:
- if(new_val != undefined)
- {
- var1_var[Number(var2_index_arr[0])] = new_val;
- }
- return var1_var[Number(var2_index_arr[0])];
- case 2:
- if(new_val != undefined)
- {
- var1_var[Number(var2_index_arr[0])][Number(var2_index_arr[1])] = new_val;
- }
- return var1_var[Number(var2_index_arr[0])][Number(var2_index_arr[1])];
- case 3:
- if(new_val != undefined)
- {
- var1_var[Number(var2_index_arr[0])][Number(var2_index_arr[1])][Number(var2_index_arr[2])] = new_val;
- }
- return var1_var[Number(var2_index_arr[0])][Number(var2_index_arr[1])][Number(var2_index_arr[2])];
- default:
- }
- }
- function trace_str(str, new_val)
- {
- delete curr_val;
- str = str.split(".");
- var _loc1_ = 0;
- while(_loc1_ < str.length)
- {
- if(_loc1_ == str.length - 1 && new_val != undefined)
- {
- curr_val = getVal(curr_val,str[_loc1_],new_val);
- }
- else
- {
- curr_val = getVal(curr_val,str[_loc1_]);
- }
- _loc1_ = _loc1_ + 1;
- }
- return String(curr_val);
- }
- function swap_depth()
- {
- _parent.trace_mc.swapDepths(_parent.getNextHighestDepth() - 1);
- }
- roll_bar.useHandCursor = false;
- intervalID = setInterval(swap_depth,1000);
-